<!-- 根据发送的参数传回需要用的人的姓名年龄信息等 -->
<template>
  <view class="content1">
      一、基本信息
      <br>
      姓名：张三
      <br>
      性别：男
      <br>
      年龄：35岁
      <br>
      体检日期：2023年9月18日
      <br>
      二、心率数据
      <br>
      本次体检采用了，通过监测收集了您的心率和呼吸数据，您的心率数据如下表所示：
      <br>
      <table>
        <thead>
          <tr>
            <th>平均心率（次/分）</th>
            <th>最高心率（次/分）</th>
            <th>最低心率（次/分）</th>
          </tr>
        </thead>
        <tbody>
          <tr>
            <td>65</td>
            <td>75</td>
            <td>55</td>
          </tr>
        </tbody>
      </table>
     <br>
     根据您的心率数据，我们对您的心率趋势进行了如下分析：
     <br>
     - 您的平均心率为76.25次/分，处于正常范围内（50-80次/分），说明您的心脏功能良好，没有明显的心动过速或过缓的现象。
     <br>
     - 您的最高心率达到了120次/分，可能是由于您在这个时间段进行了较为剧烈的运动或者情绪激动所致。建议您适当控制运动强度和情绪波动，避免过度刺激心脏。
     <br>
     - 您的最低心率降到了55次/分，可能是由于您在这个时间段处于深度睡眠状态所致。这说明您的睡眠质量较好，有利于身体恢复和修复。
     <br>
     四、异常预警
     <br>
     根据您的心率数据，我们没有发现明显的异常预警信号，但仍需注意以下几点：
     <br>
     - 如果您感觉到胸闷、胸痛、气喘、心悸等不适症状，请及时就医检查，排除冠心病、心肌梗死等严重疾病的可能。
     <br>
     - 如果您发现自己的心跳不规则，有时快有时慢，或者有漏跳或早跳的感觉，请及时就医检查，排除房颤、房室传导阻滞等心律失常的可能。
     <br>
     - 如果您有高血压、糖尿病、高血脂等基础疾病，或者有家族史、吸烟史等危险因素，请定期监测您的血压、血糖、血脂等指标，控制好相关病情，降低中风、脑梗死等危险的可能。
     <br>
     五、健康建议
     <br>
     根据您的心率数据，我们为您提供以下健康建议：
     <br>
     - 保持适度的体育锻炼，每周至少3次，每次30-60分钟，选择适合自己的运动方式和强度，避免过度劳累和伤害。
     <br>
     - 保持良好的生活习惯，戒烟限酒，少吃油腻和辛辣的食物，多吃蔬果和富含纤维的食物，保持适当的体重。
     <br>
     - 保持良好的心态，避免情绪波动过大，学会缓解压力和焦虑，必要时可以通过听音乐、冥想等方式帮助自己恢复平静。
     <br>
     - 定期进行体检，及时发现和治疗潜在的心血管疾病，遵医嘱服药，控制好相关指标，保护好自己的心脏。
     <br>
  </view>
  <view class="charts-box1">
    <qiun-data-charts 
      type="line"
      :opts="heartOption"
      :chartData="chartData1"
    />
  </view>
  
  <view class="charts-box2">
    <qiun-data-charts 
      type="line"
      :opts="breathOption"
      :chartData="chartData2"
    />
  </view>
</template>

<script setup lang="ts">
import { onLoad } from '@dcloudio/uni-app';
import { createArray } from '@/utils/array';
import { markRaw, onMounted, ref } from 'vue';
import { getEquipmentHistory1 } from '@/api/equipment/equipment';
import type {QueryEquipmentHistory1,HRR} from'@/api/types'
const chartData1 = ref({});
const chartData2 = ref({});
const cnt = 1;
let count = 300;

let heartBeatArray:number[] = []
let breathArray:number[] = []

const equipmentUUID = "618fb722-44ca-4f62-a89f-85d5ed5e84a2";//暂时先这样写
const heartOption = {
  legend: {},
  title: {
    text: '心跳信息',
    left:'center',
    fontSize: 14,
  },
  xAxis: {
    "labelCount": 10, //默认显示个数
    type: 'category',
    disableGrid: true, 
  },
  yAxis: {
    type:'value',
    gridType: "dash",
    dashLength: 2,
  },
  extra: {
    line: {
      type: "straight",
      width: 2,
      activeType: "hollow",
    },
  },
};
const breathOption = {
    legend: {},
    title: {
      text: '呼吸信息',
      left:'center',
      fontSize: 14,
    },
    xAxis: {
      "labelCount": 10,
      type: 'category',
      disableGrid: true, 
    },
    yAxis: {
      type:'value',
      gridType: "dash",
      dashLength: 2,
    },
    extra: {
      line: {
        type: "straight",
        width: 2,
        activeType: "hollow",
      },
    },
}
  onLoad((options)=>{
  		// console.log(options.id) //类型报错，不管
      const Date1 = options.id;
      console.log(Date1)
      // let date = Date.parse(Date1).toString()
      const queryParm:QueryEquipmentHistory1={
              Date1:new Date(Date1),
              equipmentUUID:equipmentUUID
          }
          console.log(queryParm.Date1)
          console.log(queryParm.Date1.getDate())
          getEquipmentHistory(queryParm);
       // console.log(Date1);
  	})
const heartInit = () =>{
  // 模拟从服务器获取数据时的延时
  setTimeout(() => {
    // 模拟服务器返回数据，如果数据格式和标准格式不同，需自行按下面的格式拼接
    const res1 = {
      categories: createArray(count),
      series: [
        {
          name: "心跳信息",
          data: [150,230,224,218,135,147,260],
        },
      ],
    };
    chartData1.value = JSON.parse(JSON.stringify(res1));
  }, 500);
}

const breathInit = ()=>{
  // 模拟从服务器获取数据时的延时
  setTimeout(() => {
    // 模拟服务器返回数据，如果数据格式和标准格式不同，需自行按下面的格式拼接
    const res2 = {
      categories: createArray(count),
      series: [
        {
          name: "呼吸信息",
          data: [150,230,224,218,135,147,260],
        },
      ],
    };
    chartData2.value = JSON.parse(JSON.stringify(res2));
  }, 500);
}

const getEquipmentHistory = async (queryParm:QueryEquipmentHistory1) => {
  const res = await getEquipmentHistory1(queryParm);
  console.log(res)
  if(res.code==200){
    console.log(res.data)
    heartBeatArray = res.data.heatbeatList
    breathArray = res.data.breathList
    count =res.data.breathList.length
    const res1 = {
      categories: createArray(count),
      series: [
        {
          name: "心跳信息",
          data: heartBeatArray,
        },
      ],
    };
    chartData1.value = JSON.parse(JSON.stringify(res1));
    const res2 = {
      categories: createArray(count),
      series: [
        {
          name: "呼吸信息",
          data: breathArray,
        },
      ],
    };
    chartData2.value = JSON.parse(JSON.stringify(res2));
  }
}

onMounted(()=>{
    heartInit()
    breathInit()
})
</script>

<style>
.content1 {
    font-size: 16px;
    line-height: 1.6;
    color: #333;
    margin: 20px;
    padding: 20px;
    border: 1px solid #ddd;
    border-radius: 8px;
    background-color: #f9f9f9;
  }
  .content1 h1 {
    font-size: 24px;
    font-weight: bold;
    margin-bottom: 20px;
  }
  .content1 br {
    content: "";
    display: block;
    margin: 10px 0;
  }
  table {
    width: 100%;
    margin-top: 20px;
    border-collapse: collapse;
  }
  table, th, td {
    border: 1px solid #ddd;
  }
  th, td {
    padding: 10px;
    text-align: center;
  }
  th {
    background-color: #f2f2f2;
  }
  .charts-box1, .charts-box2 {
    margin: 20px;
    padding: 20px;
    border: 1px solid #ddd;
    border-radius: 8px;
    background-color: #fff;
  }
  .charts-box1 h2, .charts-box2 h2 {
    font-size: 20px;
    font-weight: bold;
    margin-bottom: 10px;
  }
</style>
